<?php
/**
 * --------------------------------------------------------------
 * 正则验证函数库
 * Author: zd <kfzphp@126.com>
 * Date: 2018-06-01
 * Project: kfzphp.com
 * --------------------------------------------------------------
 */

// 验证金额(非零的正整数或正浮点数)
function preg_amount($amount)
{
    return preg_match('/^(?!0+(\.0+)?$)\d+(\.\d+)?$/', $amount) ? true : false;
}

// 验证手机号
function preg_tel($tel)
{
    return preg_match('/^(13[0-9]|14[579]|15[0-3,5-9]|16[6]|17[0135678]|18[0-9]|19[89])\\d{8}$/', $tel) ? true : false;
}

// 验证邮箱
function preg_email($email)
{
    return filter_var($email, FILTER_VALIDATE_EMAIL) ? true : false;
}

// 验证IP地址
function preg_ip($ip)
{
    return filter_var($ip, FILTER_VALIDATE_IP) ? true : false;
}

// 验证URL地址
function preg_url($url)
{
    return filter_var($url, FILTER_VALIDATE_URL) ? true : false;
}

// 验证国内座机号码 (例：0791-12345678)
function preg_landline($landline)
{
    return preg_match('/\d{3}-\d{8}|\d{4}-\d{7}/', $landline) ? true : false;
}

// 验证18位身份证
function preg_18ids($ids)
{
    return preg_match('/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/', $ids) ? true : false;
}

// 验证中国邮政编码
function preg_postcode($postcode)
{
    return preg_match('/^\d{6}$/', $postcode) ? true : false;
}
